(Not Applicable)
(Not Applicable)
1. Technical Field
This invention relates to the field of command and control systems and more particularly to a visual syntax builder for space vehicle control.
2. Description of the Related Art
Command and control systems can be used to control devices, for example specialized test equipment or software and hardware simulators. In the field of satellite command and control, space vehicle control systems can be used to command a satellite or satellite subsystems contained within the satellite, or ground equipment in the communication path between the satellite and the commanding system. In general, however, a space vehicle control system can command any device controllable by formatted commands communicated by the space vehicle control system to the target device.
A prototypical space vehicle control system generally can include a selection of commands for controlling the target device. In addition, the prototypical space vehicle control system can include a command formatting engine for appropriately formatting a chosen command with corresponding operational parameters in order to provide to the target device a valid command in a valid format. Finally, the prototypical space vehicle control system can include a command transmission module for physically transmitting formatted commands to the target device and for ensuring the receipt and acknowledgment by the target device of the formatted commands.
Presently, space vehicle control systems can process proprietary commanding languages. Using the proprietary commanding language, a user of a space vehicle control system can control a target device without learning the complexities of the internal command structure of the target device. Specifically, the space vehicle control system can convert a selected command formed using the proprietary commanding language into a command recognizable by the target device. Depending upon the target device, each recognizable command can include a variety of operational parameters.
Still, there exist fundamental problems with present space vehicle control systems. Present space vehicle control systems are prone to user error when a user specifies a command to be transmitted to a space vehicle. Specifically, each proprietary command can include a variety of operational parameters. Often, the user can fail to specify or mis-specify appropriate operational parameters included as part of a specified command. Given the complexity of present space vehicle control systems, the associated multiplicity of available commands and the multiplicity of corresponding operational parameters, presently, users must either rely upon memory or refer to appropriate documentation to determine a valid form for a selected command.
The invention concerns a visual syntax builder for providing a graphical assist for formatting commands in a command and control system. The inventive method can include several steps. Specifically, a method for graphically assisting system commanding can comprise the steps of: receiving a user-specified command; retrieving from a command database a command template corresponding to the specified command, the command template including at least one operational parameter corresponding to the specified command; for each retrieved operational parameter in the command template, adding to a graphical user interface (GUI) a GUI element corresponding to characteristics of the operational parameter; and, displaying the GUI. The user interface elements can include drop down boxes, sliders and text fields. The method can further comprise the steps of: for each GUI element in the GUI, accepting a value; and, formatting a command string containing the accepted values.
With regard to the command database, in addition to a command, each command template stored in the command database can have a data type for each operational parameter. Notably, the characteristics upon which the user interface element is chosen can include the data type. Additionally, the command template can have an indication of valid values for each operational parameter. Likewise, the characteristics upon which the user interface element is chosen can include the indication of valid values.
In the preferred embodiment, the command can be a command selected from the group consisting of a command for externally commanding a target device and a directive for internally commanding the command and control system. Additionally, the method can further comprise the step of choosing to perform the retrieving step using either a command database having stored therein the commands for externally commanding a target device or a directive database having stored therein the directives for internally commanding the command and control system. Where a user has chosen to perform the retrieving step using a command database, the method can further comprising attaching to a command database associated with a particular target device.
In the preferred embodiment, the accepting step can comprise the steps of: retrieving a list of commands from the command database; displaying the list in the GUI; and, permitting the user to select one of the commands in the list. Once selected, the appropriate GUI elements can be added to the GUI. Subsequently, the user can provide values for the operational parameters using the GUI elements. Using the provided values, a formatted command string can be produced. Advantageously, the method can further comprise the step of visually presenting the formatted command string to the user. Moreover, the method can comprise the step of automatically executing the formatted command string.
A system for graphically assisting the formatting of a command string in a command and control system can comprise: a command database for storing commands, at least one of the stored commands having at least one operational parameter; a graphical user interface (GUI); and, at least one GUI element selected for addition to the GUI for accepting a value corresponding to an operational parameter associated with a selected command in the command database. The GUI element can be selected from the group consisting of drop down boxes, sliders and text fields.
In the system, the GUI element can be selected according to characteristics of the corresponding operational parameter. Additionally, the system can comprise a command formatter for formatting a command string containing the command and the accepted command value. Moreover, the system can comprise a GUI for visually presenting the formatted command string to a user. Similarly, the system can further comprise means for automatically executing the formatted command string.
The command database can comprise command templates, each command template comprising a command and at least one operational parameter corresponding to the command. Notably, the commands stored in the command database can be commands selected from the group consisting of commands for externally commanding a target device and directives for internally commanding the command and control system. In addition, the command template stored in the command database can further comprise a data type for each operational parameter. Furthermore, the characteristics upon which the GUI element is selected can include the data type. Also, the command template can further comprise an indication of valid values for each operational parameter. Again, the characteristics upon which the GUI element is chosen can include the indication of valid values.
Significantly, each dialog box, prior to display, dynamically can conform itself to the chosen directive resulting in an optimum assist to the user. More particularly, each dialog box can be dynamically formed according to the number and type of parameters to be supplied with the chosen directive. Thus, the inventive method dynamically can map a specification to a set of formal rules. Essentially, the method is a graphical tool for creating a specification based on a formal rule.
In a command and control system, a method of dynamically conforming a GUI to a specified command and corresponding operational parameters can comprise the steps of: retrieving from a command database a record comprising a specified command and at least one operational parameter; dynamically assembling a GUI according to the retrieved record by adding to the GUI for each operational parameter in the record a GUI element corresponding to characteristics of the operational parameter; and, displaying the GUI. The user interface elements can comprise drop down boxes, sliders and text fields.
In the preferred embodiment, the command can be selected from the group consisting of a command for externally commanding a target device and a directive for internally commanding the command and control system. Thus, the method can include the step of choosing to perform the retrieving step using either a command database having stored therein the commands for externally commanding a target device or a directive database having stored therein the directives for internally commanding the command and control system. Where a command database rather than a directive database is chosen, the method can further include the step of attaching to a command database associated with a particular target device.
The record can further comprise a data type for each operational parameter. In that case, the characteristics upon which the user interface element is chosen include the data type. Additionally, the record further can comprise an indication of valid values for each operational parameter. In that case, the characteristics upon which the user interface element is chosen include the indication of valid values.